Yazılım

Recursive fonksiyon nedir?

Recursive fonksiyonlar, kendi kendini çağıran fonksiyonlardır. Yani, bir fonksiyon içinde aynı fonksiyonu çağırırız. Bu yapı, genellikle bir problemi daha küçük alt problemlere bölerek çözmek için kullanılır.

İşte bir C# Recursive fonksiyon örneği:

using System;

class Program
{
    static void RecursiveFunction(int n)
    {
        if (n > 0)
        {
            Console.WriteLine($"n değeri: {n}");
            RecursiveFunction(n - 1); // Kendini çağırarak n'i azaltıyoruz
        }
    }

    static void Main(string[] args)
    {
        int number = 5;
        Console.WriteLine("Recursive Fonksiyon Çağrısı:");
        RecursiveFunction(number);
    }
}

Bu örnekte, RecursiveFunction adında bir fonksiyonumuz var. Bu fonksiyon, aldığı bir sayıyı (n) ekrana yazdıktan sonra kendini çağırır ve bu işlem n’nin 0’dan büyük olduğu sürece devam eder. Bu sayede, fonksiyon n değeri 0’a ulaşana kadar kendisini tekrar tekrar çağıracaktır.

Main metodunda ise, 5 değerini kullanarak bu recursive fonksiyonu çağırıyoruz. Bu kodun çıktısı, 5’ten başlayarak 1’e kadar olan değerlerin ekrana yazdırılması olacaktır.

Bir başka örnek verecek olursak:

using System;

class Program
{
    // Bir stringin tersini alan recursive fonksiyon
    static string TersiniAl(string kelime)
    {
        // Eğer kelime uzunluğu 0 veya 1 ise, kelimeyi direk olarak döndür
        if (kelime.Length <= 1)
            return kelime;
        
        // Kelimenin ilk haricini alıp kalanı tersine çevir ve başına ilk harfi koy
        return TersiniAl(kelime.Substring(1)) + kelime[0];
    }

    static void Main(string[] args)
    {
        string kelime = "merhaba";
        string tersKelime = TersiniAl(kelime);
        Console.WriteLine($"Kelimenin tersi: {tersKelime}");
    }
}

Bu örnekte, bir stringin tersini alan recursive bir fonksiyon tanımladık. Fonksiyon, bir kelimeyi alır ve kelimenin tersini döndürür. Eğer kelimenin uzunluğu 0 veya 1 ise, kelimeyi direkt olarak döndürür. Değilse, kelimenin ilk haricini alır, kalan kısmı tersine çevirir ve başına ilk harfi ekler. Bu işlemi recursive olarak yapar ve sonunda tam ters kelimeyi elde ederiz.

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu